home *** CD-ROM | disk | FTP | other *** search
/ PC World 2004 June / PCWorld_2004-06_cd.bin / software / vyzkuste / koolmoves / kmsetup.exe / {app} / Motion Scripts / My Scripts / flash 5 example.txt next >
Text File  |  2003-07-19  |  3KB  |  160 lines

  1. // This working file can be copied to any of the
  2. // My Scripts folders and renamed effect.txt.
  3. // This provides documentation on how to modify this
  4. // file to create your own motion script.
  5. // Feel free to use the other effect.txt files as
  6. // inspiration.
  7.  
  8. //
  9. // these variables must be defined
  10. //
  11.  
  12. mcN = "letter";
  13.  
  14. // pause between characters in milliseconds
  15. delay = 400;
  16.  
  17. // loop = 0 or 1
  18. loop = 0;
  19.  
  20. // pause between loops in milliseconds
  21. loopDelay = 0; 
  22.  
  23. // waitCharEnd = 0 or 1
  24. // waitCharEnd == 0, all characters acted on at once
  25. // waitCharEnd == 1, characters acted on in sequence
  26. waitCharEnd = 0; 
  27.  
  28. // random = 0 or 1
  29. random = 0;
  30.  
  31. // reverse = 0 or 1
  32. // reverse == 0, left to right effect
  33. // reverse == 1, right to left effect
  34. reverse = 0; 
  35.  
  36. //
  37. // these variables are specific to this effect
  38. //
  39.  
  40. increments = 6;
  41. alpha = 0;
  42. xscale = 0;
  43. yscale = 0;
  44. tilt  = -45;
  45. startAngle = 45;
  46. finalAngle = -45;
  47. a = 150;
  48. b = 20;
  49. pi = 3.1416;
  50. startRadian = startAngle * pi / 180;
  51. finalRadian = finalAngle * pi / 180;
  52. xOffset     = a * Math.cos(finalRadian);
  53. yOffset     = b * Math.sin(finalRadian);
  54. xscaleInc   = Math.floor((100 - xscale) / increments);
  55. yscaleInc   = Math.floor((100 - yscale) / increments);
  56. alphaInc    = Math.floor((100 - alpha) / increments);
  57. radianInc   = (finalRadian - startRadian) / increments;
  58. tiltInc    = -tilt / increments;
  59.  
  60. //
  61. // this must be present
  62. //
  63.  
  64. aLetters = new Array();
  65.  
  66. //
  67. // this must be present
  68. //
  69.  
  70. for (i = 0; i< numChar; i++){
  71.   aLetters[i+0] = i;
  72.   var letter =  this[mcN +i];
  73.   letter._visible = false;
  74.   letter.init = letterInit;
  75.   letter.doEffect = effect;
  76.   letter.number = i;
  77. }
  78.  
  79. //
  80. // perform initializations here
  81. //
  82.  
  83. function letterInit(){
  84.   this._visible = true;
  85.   this.step = 0;
  86.   this.increments = this._parent.increments;
  87.   this.xscaleInc = this._parent.xscaleInc;
  88.   this.yscaleInc = this._parent.yscaleInc;
  89.   this._xscale = this._parent.xscale;
  90.   this._yscale = this._parent.yscale;
  91.   this._alpha = this._parent.alpha;
  92.   this.alphaInc = this._parent.alphaInc;
  93.   this.a = this._parent.a;
  94.   this.b = this._parent.b;
  95.   this.xFinal = this._x;
  96.   this.yFinal = this._y;
  97.   this.xOffset = this._parent.xOffset;
  98.   this.yOffset = this._parent.yOffset;
  99.   this._x = this._x - this.xOffset;
  100.   this._y = this._y + this.yOffset;
  101.   this.radianInc = this._parent.radianInc;
  102.   this.radian = this._parent.startRadian;
  103.   this.tiltInc = this._parent.tiltInc;
  104.   this._rotation = this._parent.tilt;
  105. }
  106.  
  107. //
  108. // define the effect
  109. //
  110.  
  111. function effect(){
  112.   this._xscale   += this.xscaleInc;
  113.   this._yscale   += this.yscaleInc;
  114.   this._alpha    += this.alphaInc;
  115.   this._rotation += this.tiltInc;
  116.   this.radian    += this.radianInc;
  117.  
  118.   xDist        = a * Math.cos(radian);
  119.   yDist        = b * Math.sin(radian);
  120.  
  121.   this._x      = this.xFinal + xDist - this.xOffset;
  122.   this._y      = this.yFinal - yDist + this.yOffset;
  123.  
  124.   this.step += 1;
  125.  
  126.   if (this.step >= this.increments){
  127.     this._xscale = 100;
  128.     this._yscale = 100;
  129.     this._alpha = 100;
  130.     this._x = this.xFinal;
  131.     this._y = this.yFinal;
  132.     this._rotation = 0;
  133.     this.gotoAndStop("end");
  134.   }
  135. }
  136.  
  137. //
  138. // this must be defined
  139. //
  140.  
  141. function shuffle(){
  142.   return Math.floor(Math.random() * 3) -1;
  143. }
  144.  
  145. //
  146. // this must be defined
  147. //
  148.  
  149. if (random == 1){
  150.   aLetters.sort(shuffle);
  151. }
  152.  
  153. //
  154. // this must be defined
  155. //
  156.  
  157. if (reverse == 1){
  158.   aLetters.reverse();
  159. }
  160.